package org.pr.kafkaexpress.constants;

/**
 * Kafka相关常量
 * 
 * @author LXC
 * @since 2025/7/10
 */
public final class KafkaConstants {
    
    private KafkaConstants() {
        // 私有构造函数，防止实例化
    }
    
    // 主题名称
    public static final String TEST_TOPIC = "test-topic";
    public static final String BATCH_TOPIC = "batch-topic";
    public static final String DEAD_LETTER_TOPIC = "dead-letter-topic";
    
    // 消费者组
    public static final String TEST_GROUP = "test-group";
    public static final String BATCH_GROUP = "batch-group";
    public static final String DEAD_LETTER_GROUP = "dead-letter-group";
    
    // 分区数量
    public static final int DEFAULT_PARTITIONS = 3;
    public static final int REPLICATION_FACTOR = 1;
    
    // 消息相关
    public static final String DEFAULT_MESSAGE = "Hello Kafka!";
    public static final int MAX_MESSAGE_SIZE = 1024 * 1024; // 1MB
    
    // 重试相关
    public static final int MAX_RETRY_ATTEMPTS = 3;
    public static final long RETRY_DELAY_MS = 1000L;
    
    // 批量处理相关
    public static final int BATCH_SIZE = 100;
    public static final long BATCH_TIMEOUT_MS = 5000L;
} 